import {request} from "@/network/request";


// 歌曲评论
// 说明 : 调用此接口 , 传入音乐 id 和 limit 参数 , 可获得该音乐的所有评论 ( 不需要登录 )
// 必选参数 : id: 音乐 id
// 可选参数 : limit: 取出评论数量 , 默认为 20
// offset: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)*20, 其中 20 为 limit 的值
// before: 分页参数,取上一页最后一项的 time 获取下一页数据(获取超过5000条评论的时候需要用到)
export function getCommentMusic(id, offset = 0, limit = 20) {
    return request({
        url: `/comment/music?id=${id}&limit=${limit}&offset=${offset}`
    })
}
//专辑评论
// 说明 : 调用此接口 , 传入音乐 id 和 limit 参数 , 可获得该专辑的所有评论 ( 不需要 登录 )
// 必选参数 : id: 专辑 id
// 可选参数 : limit: 取出评论数量 , 默认为 20
// offset: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)*20, 其中 20 为 limit 的值
// before: 分页参数,取上一页最后一项的 time 获取下一页数据(获取超过5000条评论的时候需要用到)
export function getCommentAlbum(id, offset = 0,limit = 20) {
    return request({
        url: `/comment/album?id=${id}&limit=${limit}&offset=${offset}`
    })
}

// 歌单评论
// 说明 : 调用此接口 , 传入音乐 id 和 limit 参数 , 可获得该歌单的所有评论 ( 不需要 登录 )
// 必选参数 : id: 歌单 id
// 可选参数 : limit: 取出评论数量 , 默认为 20
// offset: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)*20, 其中 20 为 limit 的值
// before: 分页参数,取上一页最后一项的 time 获取下一页数据(获取超过5000条评论的时候需要用到)
export function getCommentPlayList(id, offset = 0, limit = 20) {
    return request({
        url: `/comment/playlist?id=${id}&limit=${limit}&offset=${offset}`
    })
}
//楼层评论
// 说明 : 调用此接口 , 传入资源 parentCommentId 和资源类型 type和资源id 参数, 可获得该资源的歌曲楼层评论
// 必选参数 :
// parentCommentId: 楼层评论 id
// id : 资源 id
// type: 数字 , 资源类型 , 对应歌曲 , mv, 专辑 , 歌单 , 电台, 视频对应以下类型
// 0: 歌曲
// 1: mv
// 2: 歌单
// 3: 专辑
// 4: 电台
// 5: 视频
export function getFloorComments(pid, id, type) {
    return request({
        url: `/comment/floor?parentCommentId=${pid}&id=${id}&type=${type}`
    })
}

//楼层评论
// 说明 : 调用此接口 , 传入资源 parentCommentId 和资源类型 type和资源id 参数, 可获得该资源的歌曲楼层评论
// 必选参数 :
// parentCommentId: 楼层评论 id
// id : 资源 id
// type: 数字 , 资源类型 , 对应歌曲 , mv, 专辑 , 歌单 , 电台, 视频对应以下类型
// 0: 歌曲
// 1: mv
// 2: 歌单
// 3: 专辑
// 4: 电台
// 5: 视频
export function getHotComments(id, type) {
    return request({
        url: `/comment/hot?id=${id}&type=${type}`
    })
}

export function getMvComments(id, offset = 0, limit = 20) {
    return request({
        url: `/comment/mv?id=${id}&limit=${limit}&offset=${offset}`
    })
}

export function getVideoComments(id, offset = 0, limit = 20) {
    return request({
        url: `/comment/video?id=${id}&limit=${limit}&offset=${offset}`
    })
}

/**
 * 给评论点赞
 * 说明 : 调用此接口 , 传入 type, 资源 id, 和评论 id cid 和 是否点赞参数 t 即可给对 应评论点赞 ( 需要登录 )
 * 必选参数 : id : 资源 id, 如歌曲 id,mv id
 * cid : 评论 id
 * t : 是否点赞 ,1 为点赞 ,0 为取消点赞
 * type: 数字 , 资源类型 , 对应歌曲 , mv, 专辑 , 歌单 , 电台, 视频对应以下类型
 * 0: 歌曲
 * 1: mv
 * 2: 歌单
 * 3: 专辑
 * 4: 电台
 * 5: 视频
 * 6: 动态
 *  接口地址 : /comment/like
 *  调用例子 : /comment/like?id=29178366&cid=12840183&t=1&type=0 对应给 https://music.163.com/#/song?id=29178366 最热门的评论点赞
 *  // 注意： 动态点赞不需要传入 id 参数，需要传入动态的 threadId 参数,如：/comment/like?type=6&cid=1419532712&threadId=A_EV_2_6559519868_32953014&t=0， threadId 可通过 /event，/user/event 接口获取
 *
 */
export function setCommentLiked(id, cid, type, t = 1, timeStamp = new Date().getTime()) {
    console.log(timeStamp);
    return request({
        url: `/comment/like?id=${id}&cid=${cid}&t=${t}&type=${type}`
    })
}
export function doComment(t, type, id, cid = '', content = '') {
    console.log(content);
    if (content !== '') {
        return request({
            url: `/comment?t=${t}&type=${type}&id=${id}&content=${content}&commentId=${cid}`
        })
    } else if (cid === '') {
        return request({
            url: `/comment?t=${t}&type=${type}&id=${id}`
        })
    } else {
        return request({
            url: `/comment?t=${t}&type=${type}&id=${id}&commentId=${cid}`
        })
    }
}